/******************************************************************************* * Copyright (c) 2000, 2015 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.ui; /** * Implements a reference to an editor. The IEditorPart will not be instantiated * until the editor becomes visible or the API {@link #getEditor(boolean)} is * called with true. * <p> * This interface is not intended to be implemented by clients. * </p> * * @noimplement This interface is not intended to be implemented by clients. */ public interface IEditorReference extends IWorkbenchPartReference { /** * Returns the factory id of the factory used to * restore this editor. Returns null if the editor * is not persistable. */ public String getFactoryId(); /** * Returns the editor input's name. May return null if the name is not * available or if the editor failed to be restored. */ public String getName(); /** * Returns the editor referenced by this object. * Returns <code>null</code> if the editor was not instantiated or * it failed to be restored. Tries to restore the editor * if <code>restore</code> is true. */ public IEditorPart getEditor(boolean restore); /** * Returns true if the editor is pinned, otherwise returns false. */ public boolean isPinned(); /** * Returns the editor input for the editor referenced by this object. * <p> * Unlike most of the other methods on this type, this method * can trigger plug-in activation. * </p> * * @return the editor input for the editor referenced by this object * @throws PartInitException if there was an error restoring the editor input * @since 3.1 */ public IEditorInput getEditorInput() throws PartInitException; }